package persistencia;
import entidade.Questao;
import entidade.QuestaoDiscursiva;
import persistencia.QuestaoDao;
import java.util.ArrayList;
import java.util.List;

		

	public class QuestaoDiscursivaDao extends QuestaoDao {
			
		    public void cadastrar(QuestaoDiscursiva q)throws Exception{

		        conectar();
		        stmt = con.prepareStatement("insert  into questao (codDisciplina, codTopico,dificuldade,enunciado, resposta) values(?,?,?,?,?)");
		        stmt.setInt(1, q.getCodDisciplina());
		        stmt.setInt(2, q.getCodTopico()); 
		        stmt.setString(3, q.getDificuldade());
		        stmt.setString(4, q.getEnunciado());
		        stmt.setString(5, q.getResposta());
		        stmt.execute();
		        desconectar();
		    }

		    public List<Questao> consultaGeral()throws Exception{
		        conectar();
		        List<Questao> lista = new ArrayList<Questao>();
		        stmt = con.prepareStatement("select * from questaodiscursiva");
		        rs = stmt.executeQuery();

		        while(rs.next()){
		            QuestaoDiscursiva q = new QuestaoDiscursiva();
		            q.setIdQuestao(rs.getInt("idQuestao"));
		            q.setCodDisciplina(rs.getInt("codDisciplina"));
		            q.setCodTopico(rs.getInt("codTopico"));
		            q.setDificuldade(rs.getString("dificuldade"));
		            q.setEnunciado(rs.getString("enunciado"));
		            q.setResposta(rs.getString("resposta"));
		            lista.add(q);
		        }
		        desconectar();
		        return lista;

		    }


		    public void deletar(int idQuestao)throws Exception{
		        conectar();
		        stmt = con.prepareStatement("delete from questaodiscursiva where idQuestao = ?");
		        stmt.setInt(1, idQuestao);
		        stmt.execute();
		        desconectar();

		    }

		    public void editar(QuestaoDiscursiva q)throws Exception{

		        conectar();
		        stmt = con.prepareStatement("update questaodiscursiva set dificuldade =?, enunciado =? resposta = ? where idQuestao =?");
		        stmt.setString(1, q.getDificuldade());
		        stmt.setString(2, q.getEnunciado());
		        stmt.setString(3, q.getResposta());
		        stmt.setInt(4, q.getIdQuestao());
		        stmt.execute();
		        desconectar();

		    }

		    public QuestaoDiscursiva consultarDados(int idQuestao)throws Exception{
		        QuestaoDiscursiva q = null;
		        conectar();
		        stmt = con.prepareStatement("select * from questao where idQuestao =?");
		        stmt.setInt(1, idQuestao);
		        rs = stmt.executeQuery();

		        if(rs.next()){
		            q = new QuestaoDiscursiva();
		            q.setIdQuestao(rs.getInt("idQuestao"));
		            q.setCodDisciplina(rs.getInt("codDisciplina"));
		            q.setCodTopico(rs.getInt("codTopico"));
		            q.setDificuldade(rs.getString("dificuldade"));
		            q.setEnunciado(rs.getString("enunciado"));
		            q.setResposta(rs.getString("resposta"));
		            
		        }
		      return q;
		    }

		}







